package com.ruoyi.waterDistribution.mapper;

import com.ruoyi.common.core.domain.business.waterDistribution.WiOrgplanM;
import com.ruoyi.common.core.domain.business.waterManagement.WrStatvolM;
import com.ruoyi.waterDistribution.vo.WiLandBVo;

import java.util.List;

/**
 * 月机构限额水量及计划水量计算Mapper接口
 * 
 * @author ps
 * @date 2023-02-16
 */
public interface WiOrgplanMMapper 
{
    /**
     * 查询月机构限额水量及计划水量计算
     * 
     * @param orgCd 月机构限额水量及计划水量计算主键
     * @return 月机构限额水量及计划水量计算
     */
    public WiOrgplanM selectWiOrgplanMByOrgCd(String orgCd);

    /**
     * 查询月机构限额水量及计划水量计算列表
     * 
     * @param wiOrgplanM 月机构限额水量及计划水量计算
     * @return 月机构限额水量及计划水量计算集合
     */
    public List<WiOrgplanM> selectWiOrgplanMList(WiOrgplanM wiOrgplanM);

    /**
     * 新增月机构限额水量及计划水量计算
     * 
     * @param wiOrgplanM 月机构限额水量及计划水量计算
     * @return 结果
     */
    public int insertWiOrgplanM(WiOrgplanM wiOrgplanM);

    /**
     * 修改月机构限额水量及计划水量计算
     * 
     * @param wiOrgplanM 月机构限额水量及计划水量计算
     * @return 结果
     */
    public int updateWiOrgplanM(WiOrgplanM wiOrgplanM);

    /**
     * 删除月机构限额水量及计划水量计算
     * 
     * @param orgCd 月机构限额水量及计划水量计算主键
     * @return 结果
     */
    public int deleteWiOrgplanMByOrgCd(String orgCd);

    /**
     * 批量删除月机构限额水量及计划水量计算
     * 
     * @param orgCd 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteWiOrgplanMByOrgCds(String orgCd,String planYm);

    /**
     * 根据机构编码查询地块信息
     * @param orgCdQuery
     * @return
     */
    List<WiLandBVo> getWiLandBListByOrgCd(String orgCdQuery);

    /**
     * 汇总各级机构的逐月旬用水
     * @param year
     * @param orgCd
     * @return
     */
    List<WiOrgplanM> getOrgPlanByPlanYmAndOrgCd(String year, String orgCd);

    /**
     * 查询年度用水计划
     * @param year
     * @param orgCdQuery
     * @return
     */
    List<WiOrgplanM> getOrgPlanYear(String year, String orgCdQuery);

    /**
     * 获取机构名称
     * @param key
     * @return
     */
    String getOrgNm(String key);

    /**
     * 查询实际配水量
     * @param year
     * @param orgCdQuery
     * @return
     */
    List<WrStatvolM> getWrStatvolMByYearAndOrgCd(String year, String orgCdQuery);

    /**
     * 获取作物名称
     * @param cropCd
     * @return
     */
    String selcetCropNm(String cropCd);
}
